package com.huang.di;

import com.huang.di.impl.BirdImpl;
import com.huang.di.impl.DogImpl;
import org.junit.Test;

/**
 * <p>依赖倒转原则</p>
 * 高层不能依赖底层，他们之间是依赖于接口来约定的， 子类可以转换成父类，但是父类不能代替子类
 * @author aneng huang
 * @since 2020-10-28 11:36:26
 */
public class DiModelMain {


    @Test
    public void diBirdTest() {
        Bird bird =  new BirdImpl();
        bird.eat();
        bird.drink();
        bird.run();
        bird.call();
        bird.fly();
    }

    @Test
    public void diDogTest() {
        Dog dog =  new DogImpl();
        dog.eat();
        dog.drink();
        dog.run();
        dog.call();
    }

}
